package com.aabte.permissionframeworklearn.permission.mapper;

import com.aabte.permissionframeworklearn.permission.beans.PageQuery;
import com.aabte.permissionframeworklearn.permission.model.SysAcl;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface SysAclMapper {
    int deleteByPrimaryKey(Long id);

    int insert(SysAcl record);

    int insertSelective(SysAcl record);

    SysAcl selectByPrimaryKey(Long id);

    int updateByPrimaryKeySelective(SysAcl record);

    int updateByPrimaryKey(SysAcl record);

    long countByAclModuleId(@Param("aclModuleId") Long aclModuleId);

    List<SysAcl> getPageByAclModuleId(@Param("aclModuleId") Long aclModuleId, @Param("pageQuery") PageQuery pageQuery);

    long countByNameAndAclModuleId(@Param("aclModuleId") Long aclModuleId, @Param("name") String aclName, @Param("id") Long aclId);

    List<SysAcl> getAll();

    List<SysAcl> getByIdList(@Param("userAclIdList") List<Long> userAclIdList);

    List<SysAcl> getByUrl(@Param("url") String url);
}